import time
# 打开一个文件，使用open()函数
# r	以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
# rb	以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
# r+	打开一个文件用于读写。文件指针将会放在文件的开头。
# rb+	以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
# w	    打开一个文件只用于写入。如果该文件已存在则打开文件，并从开头开始编辑，即原有内容会被删除。如果该文件不存在，创建新文件。
# wb	以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件，并从开头开始编辑，即原有内容会被删除。如果该文件不存在，创建新文件。
# w+	打开一个文件用于读写。如果该文件已存在则打开文件，并从开头开始编辑，即原有内容会被删除。如果该文件不存在，创建新文件。
# wb+	以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件，并从开头开始编辑，即原有内容会被删除。如果该文件不存在，创建新文件。
# a	打开一个文件用于追加。如果该文件不存在，创建新文件进行写入。
# ab	以二进制格式打开一个文件用于追加。如果该文件不存在，创建新文件进行写入。
# a+	打开一个文件用于读写。如果该文件已存在，文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在，创建新文件用于读写。
# ab+	以二进制格式打开一个文件用于追加。如果该文件不存在，创建新文件用于读写。

# 下面是一个使用try的读取文件实例。注意：可以使用getcwd获得文件夹目录
# try:
#     f = open('./学习笔记/张驰/python projects/IO编程/test.txt', 'r')
# except FileNotFoundError as e:
#     print("文件找不到", e)
# finally:
#     if f is not None:  # 此处为了避免一个文件打不开导致后面全部出现错误
#         print("文件中的内容为", f.read())  # 输出文件中的内容
#         f.close()

# 因为每次都调用try比较麻烦，python里面提供了一种更为简洁的方法
with open('./学习笔记/张驰/python projects/IO编程/test1.txt', 'w+') as fs:
    fs.write("what does the fox say")  # 写完以后，指针是指向句子的末尾的，因此必须重新seek到文件开始的位置
    fs.seek(0)  # 必须有这句，不然会报错哦
    print("文件中的前面三个字符为:", fs.read(3))  # 只从最前面开始读取三个字符
    fs.close()  # 操作完了以后记得关掉文件
